From c5e6a170de3930738207f6fa3f8a5c53236e0ed2 Mon Sep 17 00:00:00 2001 From: Owen Taylor Date: Wed, 27 Mar 2002 16:15:48 +0000 Subject: [PATCH] Set page->last_focus_child to NULL as well as removing the weak reference, Wed Mar 27 11:10:39 2002 Owen Taylor * gtk/gtknotebook.c (gtk_notebook_real_remove): Set page->last_focus_child to NULL as well as removing the weak reference, to deal with reentrancy in set_focus_child(). (#76634) --- ChangeLog | 7 +++++++ ChangeLog.pre-2-10 | 7 +++++++ ChangeLog.pre-2-2 | 7 +++++++ ChangeLog.pre-2-4 | 7 +++++++ ChangeLog.pre-2-6 | 7 +++++++ ChangeLog.pre-2-8 | 7 +++++++ gtk/gtknotebook.c | 5 ++++- 7 files changed, 46 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 324ccd9f2e..7ac89a822e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +Wed Mar 27 11:10:39 2002 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_real_remove): Set + page->last_focus_child to NULL as well as removing the + weak reference, to deal with reentrancy in set_focus_child(). + (#76634) + 2002-03-27 Murray Cumming * gtk/gtktreeview.c: Corrected registered return type of diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 324ccd9f2e..7ac89a822e 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,10 @@ +Wed Mar 27 11:10:39 2002 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_real_remove): Set + page->last_focus_child to NULL as well as removing the + weak reference, to deal with reentrancy in set_focus_child(). + (#76634) + 2002-03-27 Murray Cumming * gtk/gtktreeview.c: Corrected registered return type of diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index 324ccd9f2e..7ac89a822e 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,3 +1,10 @@ +Wed Mar 27 11:10:39 2002 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_real_remove): Set + page->last_focus_child to NULL as well as removing the + weak reference, to deal with reentrancy in set_focus_child(). + (#76634) + 2002-03-27 Murray Cumming * gtk/gtktreeview.c: Corrected registered return type of diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 324ccd9f2e..7ac89a822e 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,10 @@ +Wed Mar 27 11:10:39 2002 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_real_remove): Set + page->last_focus_child to NULL as well as removing the + weak reference, to deal with reentrancy in set_focus_child(). + (#76634) + 2002-03-27 Murray Cumming * gtk/gtktreeview.c: Corrected registered return type of diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 324ccd9f2e..7ac89a822e 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,10 @@ +Wed Mar 27 11:10:39 2002 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_real_remove): Set + page->last_focus_child to NULL as well as removing the + weak reference, to deal with reentrancy in set_focus_child(). + (#76634) + 2002-03-27 Murray Cumming * gtk/gtktreeview.c: Corrected registered return type of diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 324ccd9f2e..7ac89a822e 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,10 @@ +Wed Mar 27 11:10:39 2002 Owen Taylor + + * gtk/gtknotebook.c (gtk_notebook_real_remove): Set + page->last_focus_child to NULL as well as removing the + weak reference, to deal with reentrancy in set_focus_child(). + (#76634) + 2002-03-27 Murray Cumming * gtk/gtktreeview.c: Corrected registered return type of diff --git a/gtk/gtknotebook.c b/gtk/gtknotebook.c index e5361afc35..bce6cad258 100644 --- a/gtk/gtknotebook.c +++ b/gtk/gtknotebook.c @@ -2389,7 +2389,10 @@ gtk_notebook_real_remove (GtkNotebook *notebook, page = list->data; if (page->last_focus_child) - g_object_remove_weak_pointer (G_OBJECT (page->last_focus_child), (gpointer *)&page->last_focus_child); + { + g_object_remove_weak_pointer (G_OBJECT (page->last_focus_child), (gpointer *)&page->last_focus_child); + page->last_focus_child = NULL; + } if (GTK_WIDGET_VISIBLE (page->child) && GTK_WIDGET_VISIBLE (notebook)) need_resize = TRUE; -- 2.30.2